import io.jsonwebtoken.Jwts;  
import io.jsonwebtoken.SignatureAlgorithm;  
import java.util.Date;  
import java.util.HashMap;  
import java.util.Map;  
import org.junit.jupiter.api.Test; // 注意这里使用的是JUnit 5的注解  
  
public class JwtTest {  
  
    @Test  
    public void testGen() {  
        Map<String, Object> claims = new HashMap<>();  
        claims.put("id", "1");  
        claims.put("username", "张三");  
  
        String secretKey = "your-secret-key"; // 使用一个安全的密钥  
  
        String token = Jwts.builder()  
                .setClaims(claims) // 注意这里不是withClaim，而是setClaims来设置所有声明  
                .setExpiration(new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 12)) // 设置过期时间  
                .signWith(SignatureAlgorithm.HS256, secretKey) // 使用HS256算法和密钥进行签名  
                .compact(); // 生成紧凑的token字符串  
  
        System.out.println(token);  
    }  
}